Hitherto, for example, in migration of a Java application between devices, one device stores the execution status, converts the execution status in an internal format into a byte sequence, and transmits the converted byte sequence to the other device, during the execution of the application. The other device converts the received execution status in the form of a byte sequence into the internal format, and restarts the execution status converted into the internal format. The technique for storing the execution status is referred to as “Checkpoint”. The technique for restarting the execution status is referred to as “Restart”. The technique for converting the execution status in the internal format into a byte sequence is referred to as “serialization”. The technique for converting the execution status in the form of a byte sequence into an internal format is referred to as “deserialization”.
A technique in which in order to separate a Java applet from a browser and display the separated Java applet, on a unique window, the separated portion is clearly identified on the source code of the Java applet by a developer or the like, is available. Furthermore, a technique in which the layout or page size of a graphical user interface (GUI) of an application to be migrated is dynamically changed so as to correspond to a target platform, is also available. Furthermore, a technique in which for migration of an application between devices, when a source device includes a fixed resource that does not achieve serialization, variables are rebound so that a fixed resource in a destination device is referenced, is also available.
Examples of related art are disclosed, for example, in Japanese Laid-open Patent Publication Nos. 11-167489 and 2003-330715.
A further example of related art is disclosed, for example, in Andrew S. Tanenbaum, “Distributed Systems: Principles and Paradigms, Second Edition”. 